home *** CD-ROM | disk | FTP | other *** search
- \entry {acronym}{1}{acronym}
- \entry {history of awk}{1}{history of \code {awk}}
- \entry {Aho, Alfred}{1}{Aho, Alfred}
- \entry {Weinberger, Peter}{1}{Weinberger, Peter}
- \entry {Kernighan, Brian}{1}{Kernighan, Brian}
- \entry {old awk}{1}{old \code {awk}}
- \entry {new awk}{1}{new \code {awk}}
- \entry {Free Software Foundation}{1}{Free Software Foundation}
- \entry {GNU Project}{2}{GNU Project}
- \entry {Linux}{2}{Linux}
- \entry {NetBSD}{2}{NetBSD}
- \entry {FreeBSD}{2}{FreeBSD}
- \entry {Trueman, David}{4}{Trueman, David}
- \entry {Deifik, Scott}{4}{Deifik, Scott}
- \entry {Hankerson, Darrel}{4}{Hankerson, Darrel}
- \entry {Rommel, Kai Uwe}{4}{Rommel, Kai Uwe}
- \entry {Rankin, Pat}{4}{Rankin, Pat}
- \entry {Jaegermann, Michal}{4}{Jaegermann, Michal}
- \entry {Friedl, Jeffrey}{4}{Friedl, Jeffrey}
- \entry {Kernighan, Brian}{4}{Kernighan, Brian}
- \entry {Hughes, Phil}{4}{Hughes, Phil}
- \entry {Robbins, Miriam}{4}{Robbins, Miriam}
- \entry {uses of awk}{5}{uses of \code {awk}}
- \entry {book, using this}{5}{book, using this}
- \entry {using this book}{5}{using this book}
- \entry {language, awk}{5}{language, \code {awk}}
- \entry {program, awk}{5}{program, \code {awk}}
- \entry {d.c., see ``dark corner''}{6}{d.c., see ``dark corner''}
- \entry {dark corner}{6}{dark corner}
- \entry {input file, sample}{7}{input file, sample}
- \entry {sample input file}{7}{sample input file}
- \entry {BBS-list file}{7}{\file {BBS-list} file}
- \entry {inventory-shipped file}{7}{\file {inventory-shipped} file}
- \entry {script, definition of}{9}{script, definition of}
- \entry {rule, definition of}{9}{rule, definition of}
- \entry {program, definition of}{9}{program, definition of}
- \entry {basic function of awk}{9}{basic function of \code {awk}}
- \entry {data-driven languages}{9}{data-driven languages}
- \entry {procedural languages}{9}{procedural languages}
- \entry {language, data-driven}{9}{language, data-driven}
- \entry {language, procedural}{9}{language, procedural}
- \entry {program, definition of}{9}{program, definition of}
- \entry {rule, definition of}{9}{rule, definition of}
- \entry {old awk vs. new awk}{9}{old \code {awk} vs. new \code {awk}}
- \entry {new awk vs. old awk}{9}{new \code {awk} vs. old \code {awk}}
- \entry {command line formats}{10}{command line formats}
- \entry {running awk programs}{10}{running \code {awk} programs}
- \entry {single quotes, why needed}{10}{single quotes, why needed}
- \entry {egrep}{11}{\code {egrep}}
- \entry {standard input}{11}{standard input}
- \entry {input, standard}{11}{input, standard}
- \entry {quoting, shell}{11}{quoting, shell}
- \entry {shell quoting}{11}{shell quoting}
- \entry {running long programs}{12}{running long programs}
- \entry {-f option}{12}{\code {-f} option}
- \entry {program file}{12}{program file}
- \entry {file, awk program}{12}{file, \code {awk} program}
- \entry {quoting, shell}{12}{quoting, shell}
- \entry {shell quoting}{12}{shell quoting}
- \entry {executable scripts}{12}{executable scripts}
- \entry {scripts, executable}{12}{scripts, executable}
- \entry {self contained programs}{12}{self contained programs}
- \entry {program, self contained}{12}{program, self contained}
- \entry {#! (executable scripts)}{12}{\code {#!} (executable scripts)}
- \entry {shell scripts}{13}{shell scripts}
- \entry {scripts, shell}{13}{scripts, shell}
- \entry {# (comment)}{13}{\code {#} (comment)}
- \entry {comments}{13}{comments}
- \entry {use of comments}{13}{use of comments}
- \entry {documenting awk programs}{13}{documenting \code {awk} programs}
- \entry {programs, documenting}{13}{programs, documenting}
- \entry {action, default}{14}{action, default}
- \entry {pattern, default}{14}{pattern, default}
- \entry {default action}{14}{default action}
- \entry {default pattern}{14}{default pattern}
- \entry {empty action}{14}{empty action}
- \entry {action, empty}{14}{action, empty}
- \entry {how awk works}{14}{how \code {awk} works}
- \entry {csh, backslash continuation}{15}{\code {csh}, backslash continuation}
- \entry {backslash continuation in csh}{15}{backslash continuation in \code {csh}}
- \entry {automatic initialization}{16}{automatic initialization}
- \entry {initialization, automatic}{16}{initialization, automatic}
- \entry {line break}{16}{line break}
- \entry {newline}{16}{newline}
- \entry {backslash continuation}{17}{backslash continuation}
- \entry {continuation of lines}{17}{continuation of lines}
- \entry {line continuation}{17}{line continuation}
- \entry {portability issues}{17}{portability issues}
- \entry {csh, backslash continuation}{17}{\code {csh}, backslash continuation}
- \entry {backslash continuation in csh}{17}{backslash continuation in \code {csh}}
- \entry {multiple statements on one line}{18}{multiple statements on one line}
- \entry {when to use awk}{18}{when to use \code {awk}}
- \entry {applications of awk}{18}{applications of \code {awk}}
- \entry {one-liners}{21}{one-liners}
- \entry {pattern, regular expressions}{23}{pattern, regular expressions}
- \entry {regexp}{23}{regexp}
- \entry {regular expression}{23}{regular expression}
- \entry {regular expressions as patterns}{23}{regular expressions as patterns}
- \entry {regexp matching operators}{23}{regexp matching operators}
- \entry {string-matching operators}{23}{string-matching operators}
- \entry {operators, string-matching}{23}{operators, string-matching}
- \entry {operators, regexp matching}{23}{operators, regexp matching}
- \entry {regexp match/non-match operators}{23}{regexp match/non-match operators}
- \entry {{\tt\char'176} operator}{23}{\code {{\tt\char'176}} operator}
- \entry {!{\tt\char'176} operator}{23}{\code {!{\tt\char'176}} operator}
- \entry {regexp constant}{24}{regexp constant}
- \entry {escape sequence notation}{24}{escape sequence notation}
- \entry {awk language, V.4 version}{25}{\code {awk} language, V.4 version}
- \entry {awk language, V.4 version}{25}{\code {awk} language, V.4 version}
- \entry {awk language, V.4 version}{25}{\code {awk} language, V.4 version}
- \entry {awk language, POSIX version}{25}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{25}{POSIX \code {awk}}
- \entry {portability issues}{26}{portability issues}
- \entry {dark corner}{26}{dark corner}
- \entry {metacharacters}{26}{metacharacters}
- \entry {regular expression metacharacters}{26}{regular expression metacharacters}
- \entry {regexp operators}{26}{regexp operators}
- \entry {anchors in regexps}{27}{anchors in regexps}
- \entry {regexp, anchors}{27}{regexp, anchors}
- \entry {awk language, POSIX version}{27}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{27}{POSIX \code {awk}}
- \entry {character list}{27}{character list}
- \entry {egrep}{28}{\code {egrep}}
- \entry {character classes}{28}{character classes}
- \entry {awk language, POSIX version}{28}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{28}{POSIX \code {awk}}
- \entry {collating elements}{29}{collating elements}
- \entry {collating symbols}{29}{collating symbols}
- \entry {equivalence classes}{29}{equivalence classes}
- \entry {complemented character list}{29}{complemented character list}
- \entry {character list, complemented}{29}{character list, complemented}
- \entry {awk language, POSIX version}{31}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{31}{POSIX \code {awk}}
- \entry {interval expressions}{31}{interval expressions}
- \entry {precedence, regexp operators}{31}{precedence, regexp operators}
- \entry {regexp operators, precedence of}{31}{regexp operators, precedence of}
- \entry {regexp operators, GNU specific}{31}{regexp operators, GNU specific}
- \entry {word, regexp definition of}{31}{word, regexp definition of}
- \entry {{\tt\indexbackslash }w regexp operator}{32}{\code {{\tt\indexbackslash }w} regexp operator}
- \entry {{\tt\indexbackslash }W regexp operator}{32}{\code {{\tt\indexbackslash }W} regexp operator}
- \entry {{\tt\indexbackslash }{\tt\less} regexp operator}{32}{\code {{\tt\indexbackslash }{\tt\less}} regexp operator}
- \entry {{\tt\indexbackslash }{\tt\gtr} regexp operator}{32}{\code {{\tt\indexbackslash }{\tt\gtr}} regexp operator}
- \entry {{\tt\indexbackslash }y regexp operator}{32}{\code {{\tt\indexbackslash }y} regexp operator}
- \entry {word boundaries, matching}{32}{word boundaries, matching}
- \entry {{\tt\indexbackslash }B regexp operator}{32}{\code {{\tt\indexbackslash }B} regexp operator}
- \entry {buffer matching operators}{32}{buffer matching operators}
- \entry {{\tt\indexbackslash }` regexp operator}{32}{\code {{\tt\indexbackslash }`} regexp operator}
- \entry {{\tt\indexbackslash }' regexp operator}{32}{\code {{\tt\indexbackslash }'} regexp operator}
- \entry {regexp, effect of command line options}{32}{regexp, effect of command line options}
- \entry {case sensitivity}{33}{case sensitivity}
- \entry {ignoring case}{33}{ignoring case}
- \entry {differences between gawk and awk}{33}{differences between \code {gawk} and \code {awk}}
- \entry {{\tt\char'176} operator}{33}{\code {{\tt\char'176}} operator}
- \entry {!{\tt\char'176} operator}{33}{\code {!{\tt\char'176}} operator}
- \entry {IGNORECASE}{33}{\code {IGNORECASE}}
- \entry {ISO 8859-1}{34}{ISO 8859-1}
- \entry {ISO Latin-1}{34}{ISO Latin-1}
- \entry {leftmost longest match}{34}{leftmost longest match}
- \entry {matching, leftmost longest}{34}{matching, leftmost longest}
- \entry {computed regular expressions}{35}{computed regular expressions}
- \entry {regular expressions, computed}{35}{regular expressions, computed}
- \entry {dynamic regular expressions}{35}{dynamic regular expressions}
- \entry {regexp, dynamic}{35}{regexp, dynamic}
- \entry {{\tt\char'176} operator}{35}{\code {{\tt\char'176}} operator}
- \entry {!{\tt\char'176} operator}{35}{\code {!{\tt\char'176}} operator}
- \entry {regexp constants, difference between slashes and quotes}{35}{regexp constants, difference between slashes and quotes}
- \entry {common mistakes}{35}{common mistakes}
- \entry {mistakes, common}{35}{mistakes, common}
- \entry {errors, common}{35}{errors, common}
- \entry {reading files}{37}{reading files}
- \entry {input}{37}{input}
- \entry {standard input}{37}{standard input}
- \entry {FILENAME}{37}{\code {FILENAME}}
- \entry {record separator, RS}{37}{record separator, \code {RS}}
- \entry {changing the record separator}{37}{changing the record separator}
- \entry {record, definition of}{37}{record, definition of}
- \entry {RS}{37}{\code {RS}}
- \entry {dark corner}{39}{dark corner}
- \entry {empty string}{39}{empty string}
- \entry {RT}{39}{\code {RT}}
- \entry {record terminator, RT}{39}{record terminator, \code {RT}}
- \entry {terminator, record}{39}{terminator, record}
- \entry {differences between gawk and awk}{39}{differences between \code {gawk} and \code {awk}}
- \entry {regular expressions as record separators}{39}{regular expressions as record separators}
- \entry {differences between gawk and awk}{40}{differences between \code {gawk} and \code {awk}}
- \entry {number of records, NR, FNR}{40}{number of records, \code {NR}, \code {FNR}}
- \entry {NR}{40}{\code {NR}}
- \entry {FNR}{40}{\code {FNR}}
- \entry {examining fields}{40}{examining fields}
- \entry {fields}{40}{fields}
- \entry {accessing fields}{40}{accessing fields}
- \entry {$ (field operator)}{40}{\code {$} (field operator)}
- \entry {field operator $}{40}{field operator \code {$}}
- \entry {NF}{40}{\code {NF}}
- \entry {number of fields, NF}{40}{number of fields, \code {NF}}
- \entry {field, changing contents of}{42}{field, changing contents of}
- \entry {changing contents of a field}{42}{changing contents of a field}
- \entry {assignment to fields}{42}{assignment to fields}
- \entry {FS}{44}{\code {FS}}
- \entry {fields, separating}{44}{fields, separating}
- \entry {field separator, FS}{44}{field separator, \code {FS}}
- \entry {common mistakes}{44}{common mistakes}
- \entry {mistakes, common}{44}{mistakes, common}
- \entry {errors, common}{44}{errors, common}
- \entry {field separator, choice of}{45}{field separator, choice of}
- \entry {regular expressions as field separators}{45}{regular expressions as field separators}
- \entry {null string}{46}{null string}
- \entry {empty string}{46}{empty string}
- \entry {differences between gawk and awk}{46}{differences between \code {gawk} and \code {awk}}
- \entry {single character fields}{46}{single character fields}
- \entry {dark corner}{47}{dark corner}
- \entry {-F option}{47}{\code {-F} option}
- \entry {field separator, on command line}{47}{field separator, on command line}
- \entry {command line, setting FS on}{47}{command line, setting \code {FS} on}
- \entry {historical features}{47}{historical features}
- \entry {awk language, POSIX version}{48}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{48}{POSIX \code {awk}}
- \entry {dark corner}{48}{dark corner}
- \entry {sed utility}{48}{\code {sed} utility}
- \entry {stream editor}{48}{stream editor}
- \entry {multiple line records}{51}{multiple line records}
- \entry {input, multiple line records}{51}{input, multiple line records}
- \entry {reading files, multiple line records}{51}{reading files, multiple line records}
- \entry {records, multiple line}{51}{records, multiple line}
- \entry {leftmost longest match}{51}{leftmost longest match}
- \entry {matching, leftmost longest}{51}{matching, leftmost longest}
- \entry {dark corner}{51}{dark corner}
- \entry {RT}{53}{\code {RT}}
- \entry {getline}{53}{\code {getline}}
- \entry {input, explicit}{53}{input, explicit}
- \entry {explicit input}{53}{explicit input}
- \entry {input, getline command}{53}{input, \code {getline} command}
- \entry {reading files, getline command}{53}{reading files, \code {getline} command}
- \entry {ERRNO}{54}{\code {ERRNO}}
- \entry {differences between gawk and awk}{54}{differences between \code {gawk} and \code {awk}}
- \entry {getline, return values}{54}{\code {getline}, return values}
- \entry {dark corner}{55}{dark corner}
- \entry {input redirection}{56}{input redirection}
- \entry {redirection of input}{56}{redirection of input}
- \entry {input pipeline}{57}{input pipeline}
- \entry {pipeline, input}{57}{pipeline, input}
- \entry {differences between gawk and awk}{58}{differences between \code {gawk} and \code {awk}}
- \entry {limitations}{58}{limitations}
- \entry {implementation limits}{58}{implementation limits}
- \entry {printing}{61}{printing}
- \entry {output}{61}{output}
- \entry {print statement}{61}{\code {print} statement}
- \entry {common mistakes}{62}{common mistakes}
- \entry {mistakes, common}{62}{mistakes, common}
- \entry {errors, common}{62}{errors, common}
- \entry {line continuation}{63}{line continuation}
- \entry {output field separator, OFS}{63}{output field separator, \code {OFS}}
- \entry {output record separator, ORS}{63}{output record separator, \code {ORS}}
- \entry {OFS}{63}{\code {OFS}}
- \entry {ORS}{63}{\code {ORS}}
- \entry {OFMT}{64}{\code {OFMT}}
- \entry {numeric output format}{64}{numeric output format}
- \entry {format, numeric output}{64}{format, numeric output}
- \entry {output format specifier, OFMT}{64}{output format specifier, \code {OFMT}}
- \entry {dark corner}{64}{dark corner}
- \entry {awk language, POSIX version}{64}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{64}{POSIX \code {awk}}
- \entry {formatted output}{64}{formatted output}
- \entry {output, formatted}{64}{output, formatted}
- \entry {printf statement, syntax of}{65}{\code {printf} statement, syntax of}
- \entry {format string}{65}{format string}
- \entry {printf, format-control characters}{65}{\code {printf}, format-control characters}
- \entry {format specifier}{65}{format specifier}
- \entry {dark corner}{66}{dark corner}
- \entry {printf, modifiers}{66}{\code {printf}, modifiers}
- \entry {modifiers (in format specifiers)}{66}{modifiers (in format specifiers)}
- \entry {dark corner}{67}{dark corner}
- \entry {awk language, POSIX version}{68}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{68}{POSIX \code {awk}}
- \entry {output redirection}{70}{output redirection}
- \entry {redirection of output}{70}{redirection of output}
- \entry {pipes for output}{71}{pipes for output}
- \entry {output, piping}{71}{output, piping}
- \entry {differences between gawk and awk}{71}{differences between \code {gawk} and \code {awk}}
- \entry {limitations}{71}{limitations}
- \entry {implementation limits}{71}{implementation limits}
- \entry {standard input}{72}{standard input}
- \entry {standard output}{72}{standard output}
- \entry {standard error output}{72}{standard error output}
- \entry {file descriptors}{72}{file descriptors}
- \entry {differences between gawk and awk}{72}{differences between \code {gawk} and \code {awk}}
- \entry {/dev/stdin}{72}{\file {/dev/stdin}}
- \entry {/dev/stdout}{72}{\file {/dev/stdout}}
- \entry {/dev/stderr}{72}{\file {/dev/stderr}}
- \entry {/dev/fd}{72}{\file {/dev/fd}}
- \entry {process information}{73}{process information}
- \entry {/dev/pid}{73}{\file {/dev/pid}}
- \entry {/dev/pgrpid}{73}{\file {/dev/pgrpid}}
- \entry {/dev/ppid}{73}{\file {/dev/ppid}}
- \entry {/dev/user}{73}{\file {/dev/user}}
- \entry {closing input files and pipes}{74}{closing input files and pipes}
- \entry {closing output files and pipes}{74}{closing output files and pipes}
- \entry {close}{74}{\code {close}}
- \entry {ERRNO}{75}{\code {ERRNO}}
- \entry {differences between gawk and awk}{75}{differences between \code {gawk} and \code {awk}}
- \entry {differences between gawk and awk}{75}{differences between \code {gawk} and \code {awk}}
- \entry {portability issues}{75}{portability issues}
- \entry {expression}{77}{expression}
- \entry {constants, types of}{77}{constants, types of}
- \entry {string constants}{77}{string constants}
- \entry {numeric constant}{77}{numeric constant}
- \entry {numeric value}{77}{numeric value}
- \entry {differences between gawk and awk}{77}{differences between \code {gawk} and \code {awk}}
- \entry {{\tt\char'176} operator}{77}{\code {{\tt\char'176}} operator}
- \entry {!{\tt\char'176} operator}{77}{\code {!{\tt\char'176}} operator}
- \entry {dark corner}{78}{dark corner}
- \entry {differences between gawk and awk}{78}{differences between \code {gawk} and \code {awk}}
- \entry {dark corner}{78}{dark corner}
- \entry {variables, user-defined}{79}{variables, user-defined}
- \entry {user-defined variables}{79}{user-defined variables}
- \entry {dark corner}{81}{dark corner}
- \entry {conversion of strings and numbers}{81}{conversion of strings and numbers}
- \entry {null string}{81}{null string}
- \entry {empty string}{81}{empty string}
- \entry {type conversion}{81}{type conversion}
- \entry {CONVFMT}{81}{\code {CONVFMT}}
- \entry {dark corner}{82}{dark corner}
- \entry {awk language, POSIX version}{82}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{82}{POSIX \code {awk}}
- \entry {OFMT}{82}{\code {OFMT}}
- \entry {arithmetic operators}{82}{arithmetic operators}
- \entry {operators, arithmetic}{82}{operators, arithmetic}
- \entry {addition}{82}{addition}
- \entry {subtraction}{82}{subtraction}
- \entry {multiplication}{82}{multiplication}
- \entry {division}{82}{division}
- \entry {remainder}{82}{remainder}
- \entry {quotient}{82}{quotient}
- \entry {exponentiation}{82}{exponentiation}
- \entry {awk language, POSIX version}{83}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{83}{POSIX \code {awk}}
- \entry {differences between gawk and awk}{83}{differences between \code {gawk} and \code {awk}}
- \entry {string operators}{83}{string operators}
- \entry {operators, string}{83}{operators, string}
- \entry {concatenation}{83}{concatenation}
- \entry {assignment operators}{84}{assignment operators}
- \entry {operators, assignment}{84}{operators, assignment}
- \entry {expression, assignment}{84}{expression, assignment}
- \entry {side effect}{84}{side effect}
- \entry {lvalue}{84}{lvalue}
- \entry {rvalue}{84}{rvalue}
- \entry {types of variables}{85}{types of variables}
- \entry {Rankin, Pat}{86}{Rankin, Pat}
- \entry {awk language, POSIX version}{86}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{86}{POSIX \code {awk}}
- \entry {increment operators}{87}{increment operators}
- \entry {operators, increment}{87}{operators, increment}
- \entry {decrement operators}{87}{decrement operators}
- \entry {operators, decrement}{87}{operators, decrement}
- \entry {truth values}{88}{truth values}
- \entry {logical true}{88}{logical true}
- \entry {logical false}{88}{logical false}
- \entry {null string}{88}{null string}
- \entry {empty string}{88}{empty string}
- \entry {dark corner}{88}{dark corner}
- \entry {comparison expressions}{88}{comparison expressions}
- \entry {expression, comparison}{88}{expression, comparison}
- \entry {expression, matching}{88}{expression, matching}
- \entry {relational operators}{88}{relational operators}
- \entry {operators, relational}{88}{operators, relational}
- \entry {regexp match/non-match operators}{88}{regexp match/non-match operators}
- \entry {variable typing}{88}{variable typing}
- \entry {types of variables}{88}{types of variables}
- \entry {numeric string}{88}{numeric string}
- \entry {relational operators}{89}{relational operators}
- \entry {operators, relational}{89}{operators, relational}
- \entry {{\tt\less} operator}{89}{\code {{\tt\less}} operator}
- \entry {{\tt\less}= operator}{89}{\code {{\tt\less}=} operator}
- \entry {{\tt\gtr} operator}{89}{\code {{\tt\gtr}} operator}
- \entry {{\tt\gtr}= operator}{89}{\code {{\tt\gtr}=} operator}
- \entry {== operator}{89}{\code {==} operator}
- \entry {!= operator}{89}{\code {!=} operator}
- \entry {{\tt\char'176} operator}{89}{\code {{\tt\char'176}} operator}
- \entry {!{\tt\char'176} operator}{89}{\code {!{\tt\char'176}} operator}
- \entry {in operator}{89}{\code {in} operator}
- \entry {common mistakes}{90}{common mistakes}
- \entry {mistakes, common}{90}{mistakes, common}
- \entry {errors, common}{90}{errors, common}
- \entry {comparisons, string vs. regexp}{90}{comparisons, string vs. regexp}
- \entry {string comparison vs. regexp comparison}{90}{string comparison vs. regexp comparison}
- \entry {regexp comparison vs. string comparison}{90}{regexp comparison vs. string comparison}
- \entry {regexp as expression}{91}{regexp as expression}
- \entry {expression, boolean}{91}{expression, boolean}
- \entry {boolean expressions}{91}{boolean expressions}
- \entry {operators, boolean}{91}{operators, boolean}
- \entry {boolean operators}{91}{boolean operators}
- \entry {logical operations}{91}{logical operations}
- \entry {operations, logical}{91}{operations, logical}
- \entry {short-circuit operators}{91}{short-circuit operators}
- \entry {operators, short-circuit}{91}{operators, short-circuit}
- \entry {and operator}{91}{and operator}
- \entry {or operator}{91}{or operator}
- \entry {not operator}{91}{not operator}
- \entry {&& operator}{91}{\code {&&} operator}
- \entry {{\tt\char'174}{\tt\char'174} operator}{91}{\code {{\tt\char'174}{\tt\char'174}} operator}
- \entry {! operator}{91}{\code {!} operator}
- \entry {line continuation}{92}{line continuation}
- \entry {conditional expression}{93}{conditional expression}
- \entry {expression, conditional}{93}{expression, conditional}
- \entry {differences between gawk and awk}{93}{differences between \code {gawk} and \code {awk}}
- \entry {line continuation}{93}{line continuation}
- \entry {function call}{93}{function call}
- \entry {calling a function}{93}{calling a function}
- \entry {arguments in function call}{93}{arguments in function call}
- \entry {precedence}{94}{precedence}
- \entry {operator precedence}{94}{operator precedence}
- \entry {awk language, POSIX version}{95}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{95}{POSIX \code {awk}}
- \entry {awk language, POSIX version}{96}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{96}{POSIX \code {awk}}
- \entry {pattern, definition of}{97}{pattern, definition of}
- \entry {patterns, types of}{97}{patterns, types of}
- \entry {range pattern}{99}{range pattern}
- \entry {pattern, range}{99}{pattern, range}
- \entry {matching ranges of lines}{99}{matching ranges of lines}
- \entry {skipping lines between markers}{100}{skipping lines between markers}
- \entry {BEGIN special pattern}{100}{\code {BEGIN} special pattern}
- \entry {pattern, BEGIN}{100}{pattern, \code {BEGIN}}
- \entry {END special pattern}{100}{\code {END} special pattern}
- \entry {pattern, END}{100}{pattern, \code {END}}
- \entry {dark corner}{101}{dark corner}
- \entry {I/O from BEGIN and END}{102}{I/O from \code {BEGIN} and \code {END}}
- \entry {differences between gawk and awk}{102}{differences between \code {gawk} and \code {awk}}
- \entry {empty pattern}{102}{empty pattern}
- \entry {pattern, empty}{102}{pattern, empty}
- \entry {action, definition of}{102}{action, definition of}
- \entry {curly braces}{102}{curly braces}
- \entry {action, curly braces}{102}{action, curly braces}
- \entry {action, separating statements}{102}{action, separating statements}
- \entry {control statement}{105}{control statement}
- \entry {compound statement}{105}{compound statement}
- \entry {statement, compound}{105}{statement, compound}
- \entry {if-else statement}{105}{\code {if}-\code {else} statement}
- \entry {while statement}{106}{\code {while} statement}
- \entry {loop}{106}{loop}
- \entry {body of a loop}{106}{body of a loop}
- \entry {for statement}{107}{\code {for} statement}
- \entry {break statement}{109}{\code {break} statement}
- \entry {loops, exiting}{109}{loops, exiting}
- \entry {break, outside of loops}{109}{\code {break}, outside of loops}
- \entry {historical features}{109}{historical features}
- \entry {awk language, POSIX version}{109}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{109}{POSIX \code {awk}}
- \entry {dark corner}{109}{dark corner}
- \entry {continue statement}{110}{\code {continue} statement}
- \entry {continue, outside of loops}{110}{\code {continue}, outside of loops}
- \entry {historical features}{110}{historical features}
- \entry {awk language, POSIX version}{110}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{110}{POSIX \code {awk}}
- \entry {dark corner}{110}{dark corner}
- \entry {next statement}{111}{\code {next} statement}
- \entry {awk language, POSIX version}{111}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{111}{POSIX \code {awk}}
- \entry {nextfile statement}{112}{\code {nextfile} statement}
- \entry {differences between gawk and awk}{112}{differences between \code {gawk} and \code {awk}}
- \entry {next file statement}{112}{\code {next file} statement}
- \entry {exit statement}{112}{\code {exit} statement}
- \entry {dark corner}{113}{dark corner}
- \entry {built-in variables}{115}{built-in variables}
- \entry {built-in variables, user modifiable}{115}{built-in variables, user modifiable}
- \entry {CONVFMT}{115}{\code {CONVFMT}}
- \entry {awk language, POSIX version}{115}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{115}{POSIX \code {awk}}
- \entry {FIELDWIDTHS}{115}{\code {FIELDWIDTHS}}
- \entry {FS}{115}{\code {FS}}
- \entry {IGNORECASE}{116}{\code {IGNORECASE}}
- \entry {OFMT}{116}{\code {OFMT}}
- \entry {OFS}{116}{\code {OFS}}
- \entry {ORS}{116}{\code {ORS}}
- \entry {RS}{116}{\code {RS}}
- \entry {SUBSEP}{116}{\code {SUBSEP}}
- \entry {built-in variables, convey information}{117}{built-in variables, convey information}
- \entry {ARGC}{117}{\code {ARGC}}
- \entry {ARGV}{117}{\code {ARGV}}
- \entry {ARGIND}{117}{\code {ARGIND}}
- \entry {ENVIRON}{118}{\code {ENVIRON}}
- \entry {ERRNO}{118}{\code {ERRNO}}
- \entry {dark corner}{118}{dark corner}
- \entry {FILENAME}{118}{\code {FILENAME}}
- \entry {FNR}{118}{\code {FNR}}
- \entry {NF}{118}{\code {NF}}
- \entry {NR}{118}{\code {NR}}
- \entry {RLENGTH}{119}{\code {RLENGTH}}
- \entry {RSTART}{119}{\code {RSTART}}
- \entry {RT}{119}{\code {RT}}
- \entry {dark corner}{119}{dark corner}
- \entry {arrays}{123}{arrays}
- \entry {arrays, definition of}{123}{arrays, definition of}
- \entry {associative arrays}{123}{associative arrays}
- \entry {arrays, associative}{123}{arrays, associative}
- \entry {sparse arrays}{124}{sparse arrays}
- \entry {arrays, sparse}{124}{arrays, sparse}
- \entry {array reference}{124}{array reference}
- \entry {element of array}{124}{element of array}
- \entry {reference to array}{124}{reference to array}
- \entry {arrays, presence of elements}{125}{arrays, presence of elements}
- \entry {arrays, the in operator}{125}{arrays, the \code {in} operator}
- \entry {array assignment}{125}{array assignment}
- \entry {element assignment}{125}{element assignment}
- \entry {for (x in ...{})}{127}{\code {for (x in \dots {})}}
- \entry {arrays, special for statement}{127}{arrays, special \code {for} statement}
- \entry {scanning an array}{127}{scanning an array}
- \entry {delete statement}{128}{\code {delete} statement}
- \entry {deleting elements of arrays}{128}{deleting elements of arrays}
- \entry {removing elements of arrays}{128}{removing elements of arrays}
- \entry {arrays, deleting an element}{128}{arrays, deleting an element}
- \entry {arrays, deleting entire contents}{128}{arrays, deleting entire contents}
- \entry {deleting entire arrays}{128}{deleting entire arrays}
- \entry {differences between gawk and awk}{128}{differences between \code {gawk} and \code {awk}}
- \entry {portability issues}{128}{portability issues}
- \entry {Brennan, Michael}{128}{Brennan, Michael}
- \entry {conversions, during subscripting}{129}{conversions, during subscripting}
- \entry {numbers, used as subscripts}{129}{numbers, used as subscripts}
- \entry {CONVFMT}{129}{\code {CONVFMT}}
- \entry {uninitialized variables, as array subscripts}{130}{uninitialized variables, as array subscripts}
- \entry {array subscripts, uninitialized variables}{130}{array subscripts, uninitialized variables}
- \entry {null string, as array subscript}{130}{null string, as array subscript}
- \entry {dark corner}{130}{dark corner}
- \entry {subscripts in arrays}{130}{subscripts in arrays}
- \entry {arrays, multi-dimensional subscripts}{130}{arrays, multi-dimensional subscripts}
- \entry {multi-dimensional subscripts}{130}{multi-dimensional subscripts}
- \entry {SUBSEP}{130}{\code {SUBSEP}}
- \entry {built-in functions}{135}{built-in functions}
- \entry {differences between gawk and awk}{135}{differences between \code {gawk} and \code {awk}}
- \entry {evaluation, order of}{135}{evaluation, order of}
- \entry {order of evaluation}{135}{order of evaluation}
- \entry {int}{136}{\code {int}}
- \entry {sqrt}{136}{\code {sqrt}}
- \entry {exp}{136}{\code {exp}}
- \entry {log}{136}{\code {log}}
- \entry {sin}{136}{\code {sin}}
- \entry {cos}{136}{\code {cos}}
- \entry {atan2}{136}{\code {atan2}}
- \entry {rand}{136}{\code {rand}}
- \entry {seed for random numbers}{137}{seed for random numbers}
- \entry {random numbers, seed of}{137}{random numbers, seed of}
- \entry {srand}{137}{\code {srand}}
- \entry {index}{137}{\code {index}}
- \entry {length}{138}{\code {length}}
- \entry {historical features}{138}{historical features}
- \entry {portability issues}{138}{portability issues}
- \entry {awk language, POSIX version}{138}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{138}{POSIX \code {awk}}
- \entry {match}{138}{\code {match}}
- \entry {RSTART}{138}{\code {RSTART}}
- \entry {RLENGTH}{138}{\code {RLENGTH}}
- \entry {split}{139}{\code {split}}
- \entry {differences between gawk and awk}{139}{differences between \code {gawk} and \code {awk}}
- \entry {dark corner}{139}{dark corner}
- \entry {sprintf}{140}{\code {sprintf}}
- \entry {sub}{140}{\code {sub}}
- \entry {gsub}{141}{\code {gsub}}
- \entry {gensub}{141}{\code {gensub}}
- \entry {differences between gawk and awk}{142}{differences between \code {gawk} and \code {awk}}
- \entry {substr}{142}{\code {substr}}
- \entry {case conversion}{142}{case conversion}
- \entry {conversion of case}{142}{conversion of case}
- \entry {tolower}{143}{\code {tolower}}
- \entry {toupper}{143}{\code {toupper}}
- \entry {escape processing, sub et. al.}{143}{escape processing, \code {sub} et. al.}
- \entry {awk language, POSIX version}{144}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{144}{POSIX \code {awk}}
- \entry {close}{146}{\code {close}}
- \entry {fflush}{146}{\code {fflush}}
- \entry {portability issues}{146}{portability issues}
- \entry {flushing buffers}{146}{flushing buffers}
- \entry {buffers, flushing}{146}{buffers, flushing}
- \entry {buffering output}{146}{buffering output}
- \entry {output, buffering}{146}{output, buffering}
- \entry {system}{146}{\code {system}}
- \entry {interaction, awk and other programs}{146}{interaction, \code {awk} and other programs}
- \entry {flushing buffers}{147}{flushing buffers}
- \entry {buffers, flushing}{147}{buffers, flushing}
- \entry {buffering output}{147}{buffering output}
- \entry {output, buffering}{147}{output, buffering}
- \entry {timestamps}{148}{timestamps}
- \entry {time of day}{148}{time of day}
- \entry {systime}{148}{\code {systime}}
- \entry {strftime}{148}{\code {strftime}}
- \entry {locale, definition of}{149}{locale, definition of}
- \entry {ISO 8601}{150}{ISO 8601}
- \entry {RFC-822}{151}{RFC-822}
- \entry {RFC-1036}{151}{RFC-1036}
- \entry {user-defined functions}{153}{user-defined functions}
- \entry {functions, user-defined}{153}{functions, user-defined}
- \entry {defining functions}{153}{defining functions}
- \entry {function definition}{153}{function definition}
- \entry {names, use of}{153}{names, use of}
- \entry {namespaces}{153}{namespaces}
- \entry {variable shadowing}{154}{variable shadowing}
- \entry {recursive function}{154}{recursive function}
- \entry {function, recursive}{154}{function, recursive}
- \entry {awk language, POSIX version}{154}{\code {awk} language, POSIX version}
- \entry {POSIX awk}{154}{POSIX \code {awk}}
- \entry {portability issues}{154}{portability issues}
- \entry {call by value}{156}{call by value}
- \entry {call by reference}{156}{call by reference}
- \entry {calling a function}{156}{calling a function}
- \entry {function call}{156}{function call}
- \entry {call by value}{156}{call by value}
- \entry {call by reference}{157}{call by reference}
- \entry {undefined functions}{157}{undefined functions}
- \entry {functions, undefined}{157}{functions, undefined}
- \entry {return statement}{158}{\code {return} statement}
- \entry {command line}{161}{command line}
- \entry {invocation of gawk}{161}{invocation of \code {gawk}}
- \entry {arguments, command line}{161}{arguments, command line}
- \entry {options, command line}{161}{options, command line}
- \entry {long options}{161}{long options}
- \entry {options, long}{161}{options, long}
- \entry {empty program}{161}{empty program}
- \entry {dark corner}{161}{dark corner}
- \entry {-F option}{161}{\code {-F} option}
- \entry {--field-separator option}{161}{\code {--field-separator} option}
- \entry {-f option}{161}{\code {-f} option}
- \entry {--file option}{161}{\code {--file} option}
- \entry {-v option}{161}{\code {-v} option}
- \entry {--assign option}{161}{\code {--assign} option}
- \entry {-W option}{162}{\code {-W} option}
- \entry {--compat option}{162}{\code {--compat} option}
- \entry {--traditional option}{162}{\code {--traditional} option}
- \entry {compatibility mode}{162}{compatibility mode}
- \entry {--copyleft option}{162}{\code {--copyleft} option}
- \entry {--copyright option}{162}{\code {--copyright} option}
- \entry {--help option}{163}{\code {--help} option}
- \entry {--usage option}{163}{\code {--usage} option}
- \entry {--lint option}{163}{\code {--lint} option}
- \entry {--lint-old option}{163}{\code {--lint-old} option}
- \entry {--posix option}{163}{\code {--posix} option}
- \entry {POSIX mode}{163}{POSIX mode}
- \entry {--source option}{164}{\code {--source} option}
- \entry {--version option}{164}{\code {--version} option}
- \entry {POSIXLY{\_}CORRECT environment variable}{164}{\code {POSIXLY{\_}CORRECT} environment variable}
- \entry {environment variable, POSIXLY{\_}CORRECT}{164}{environment variable, \code {POSIXLY{\_}CORRECT}}
- \entry {ARGIND}{165}{\code {ARGIND}}
- \entry {ARGV}{165}{\code {ARGV}}
- \entry {dark corner}{165}{dark corner}
- \entry {multiple passes over data}{166}{multiple passes over data}
- \entry {passes, multiple}{166}{passes, multiple}
- \entry {AWKPATH environment variable}{166}{\code {AWKPATH} environment variable}
- \entry {environment variable, AWKPATH}{166}{environment variable, \code {AWKPATH}}
- \entry {search path}{166}{search path}
- \entry {directory search}{166}{directory search}
- \entry {path, search}{166}{path, search}
- \entry {differences between gawk and awk}{166}{differences between \code {gawk} and \code {awk}}
- \entry {search path, for source files}{166}{search path, for source files}
- \entry {deprecated options}{167}{deprecated options}
- \entry {obsolete options}{167}{obsolete options}
- \entry {deprecated features}{167}{deprecated features}
- \entry {obsolete features}{167}{obsolete features}
- \entry {undocumented features}{167}{undocumented features}
- \entry {bugs, known in gawk}{167}{bugs, known in \code {gawk}}
- \entry {known bugs}{167}{known bugs}
- \entry {portability issues}{169}{portability issues}
- \entry {skipping input files}{170}{skipping input files}
- \entry {input files, skipping}{170}{input files, skipping}
- \entry {nextfile function}{170}{\code {nextfile} function}
- \entry {assertions}{172}{assertions}
- \entry {assert, C version}{172}{\code {assert}, C version}
- \entry {assert}{172}{\code {assert}}
- \entry {backslash continuation}{173}{backslash continuation}
- \entry {numeric character values}{173}{numeric character values}
- \entry {values of characters as numbers}{173}{values of characters as numbers}
- \entry {ord}{173}{\code {ord}}
- \entry {chr}{173}{\code {chr}}
- \entry {character sets}{174}{character sets}
- \entry {character encodings}{174}{character encodings}
- \entry {ASCII}{174}{ASCII}
- \entry {EBCDIC}{174}{EBCDIC}
- \entry {mark parity}{174}{mark parity}
- \entry {merging strings}{175}{merging strings}
- \entry {join}{176}{\code {join}}
- \entry {converting dates to timestamps}{176}{converting dates to timestamps}
- \entry {dates, converting to timestamps}{176}{dates, converting to timestamps}
- \entry {timestamps, converting from dates}{176}{timestamps, converting from dates}
- \entry {{\_}tm{\_}isleap}{178}{\code {{\_}tm{\_}isleap}}
- \entry {{\_}tm{\_}addup}{178}{\code {{\_}tm{\_}addup}}
- \entry {mktime}{179}{\code {mktime}}
- \entry {formatted timestamps}{182}{formatted timestamps}
- \entry {timestamps, formatted}{182}{timestamps, formatted}
- \entry {gettimeofday}{182}{\code {gettimeofday}}
- \entry {per file initialization and clean-up}{184}{per file initialization and clean-up}
- \entry {beginfile}{185}{\code {beginfile}}
- \entry {endfile}{185}{\code {endfile}}
- \entry {getopt, C version}{185}{\code {getopt}, C version}
- \entry {processing arguments}{185}{processing arguments}
- \entry {argument processing}{185}{argument processing}
- \entry {getopt}{188}{\code {getopt}}
- \entry {/dev/user}{191}{\file {/dev/user}}
- \entry {getpwent, C version}{191}{\code {getpwent}, C version}
- \entry {user information}{191}{user information}
- \entry {login information}{191}{login information}
- \entry {account information}{191}{account information}
- \entry {password file}{191}{password file}
- \entry {pwcat program}{192}{\code {pwcat} program}
- \entry {pwcat.c}{192}{\code {pwcat.c}}
- \entry {{\_}pw{\_}init}{193}{\code {{\_}pw{\_}init}}
- \entry {getpwnam}{194}{\code {getpwnam}}
- \entry {getpwuid}{195}{\code {getpwuid}}
- \entry {getpwent}{195}{\code {getpwent}}
- \entry {endpwent}{195}{\code {endpwent}}
- \entry {getgrent, C version}{196}{\code {getgrent}, C version}
- \entry {group information}{196}{group information}
- \entry {account information}{196}{account information}
- \entry {group file}{196}{group file}
- \entry {grcat program}{196}{\code {grcat} program}
- \entry {grcat.c}{196}{\code {grcat.c}}
- \entry {{\_}gr{\_}init}{198}{\code {{\_}gr{\_}init}}
- \entry {getgrnam}{200}{\code {getgrnam}}
- \entry {getgrgid}{200}{\code {getgrgid}}
- \entry {getgruser}{200}{\code {getgruser}}
- \entry {getgrent}{200}{\code {getgrent}}
- \entry {endgrent}{200}{\code {endgrent}}
- \entry {namespace issues in awk}{201}{namespace issues in \code {awk}}
- \entry {documenting awk programs}{201}{documenting \code {awk} programs}
- \entry {programs, documenting}{201}{programs, documenting}
- \entry {Tcl}{202}{Tcl}
- \entry {cut utility}{203}{\code {cut} utility}
- \entry {cut.awk}{204}{\code {cut.awk}}
- \entry {egrep utility}{208}{\code {egrep} utility}
- \entry {egrep.awk}{209}{\code {egrep.awk}}
- \entry {id utility}{212}{\code {id} utility}
- \entry {id.awk}{213}{\code {id.awk}}
- \entry {split utility}{215}{\code {split} utility}
- \entry {split.awk}{215}{\code {split.awk}}
- \entry {tee utility}{217}{\code {tee} utility}
- \entry {tee.awk}{217}{\code {tee.awk}}
- \entry {uniq utility}{218}{\code {uniq} utility}
- \entry {uniq.awk}{219}{\code {uniq.awk}}
- \entry {wc utility}{223}{\code {wc} utility}
- \entry {wc.awk}{223}{\code {wc.awk}}
- \entry {dupword.awk}{226}{\code {dupword.awk}}
- \entry {alarm.awk}{227}{\code {alarm.awk}}
- \entry {translate.awk}{230}{\code {translate.awk}}
- \entry {labels.awk}{232}{\code {labels.awk}}
- \entry {wordfreq.sh}{235}{\code {wordfreq.sh}}
- \entry {Rakitzis, Byron}{236}{Rakitzis, Byron}
- \entry {histsort.awk}{236}{\code {histsort.awk}}
- \entry {extract.awk}{237}{\code {extract.awk}}
- \entry {sed utility}{240}{\code {sed} utility}
- \entry {Brennan, Michael}{240}{Brennan, Michael}
- \entry {awksed}{240}{\code {awksed}}
- \entry {simple stream editor}{240}{simple stream editor}
- \entry {stream editor, simple}{240}{stream editor, simple}
- \entry {sed utility}{244}{\code {sed} utility}
- \entry {igawk.sh}{244}{\code {igawk.sh}}
- \entry {awk language, V.4 version}{252}{\code {awk} language, V.4 version}
- \entry {Kernighan, Brian}{253}{Kernighan, Brian}
- \entry {compatibility mode}{254}{compatibility mode}
- \entry {historical features}{276}{historical features}
- \entry {getting gawk}{277}{getting \code {gawk}}
- \entry {anonymous ftp}{277}{anonymous \code {ftp}}
- \entry {ftp, anonymous}{277}{\code {ftp}, anonymous}
- \entry {Free Software Foundation}{277}{Free Software Foundation}
- \entry {Free Software Foundation}{277}{Free Software Foundation}
- \entry {installation, unix}{282}{installation, unix}
- \entry {configuring gawk}{282}{configuring \code {gawk}}
- \entry {custom.h configuration file}{283}{\code {custom.h} configuration file}
- \entry {installation, vms}{283}{installation, vms}
- \entry {installation, MS-DOS and OS/2}{286}{installation, MS-DOS and OS/2}
- \entry {atari}{287}{atari}
- \entry {installation, atari}{287}{installation, atari}
- \entry {Linux}{287}{Linux}
- \entry {amiga}{289}{amiga}
- \entry {installation, amiga}{289}{installation, amiga}
- \entry {comp.lang.awk}{290}{\code {comp.lang.awk}}
- \entry {Deifik, Scott}{290}{Deifik, Scott}
- \entry {Fish, Fred}{290}{Fish, Fred}
- \entry {Hankerson, Darrel}{290}{Hankerson, Darrel}
- \entry {Jaegermann, Michal}{290}{Jaegermann, Michal}
- \entry {Rankin, Pat}{290}{Rankin, Pat}
- \entry {Rommel, Kai Uwe}{290}{Rommel, Kai Uwe}
- \entry {Kernighan, Brian}{291}{Kernighan, Brian}
- \entry {anonymous ftp}{291}{anonymous \code {ftp}}
- \entry {ftp, anonymous}{291}{\code {ftp}, anonymous}
- \entry {Brennan, Michael}{291}{Brennan, Michael}
- \entry {mawk}{291}{\code {mawk}}
- \entry {adding new features}{293}{adding new features}
- \entry {features, adding}{293}{features, adding}
- \entry {gawk coding style}{294}{\code {gawk} coding style}
- \entry {coding style used in gawk}{294}{coding style used in \code {gawk}}
- \entry {porting gawk}{295}{porting \code {gawk}}
- \entry {PERL}{297}{PERL}
- \entry {Wall, Larry}{297}{Wall, Larry}
- \entry {ISO 8859-1}{300}{ISO 8859-1}
- \entry {ISO Latin-1}{300}{ISO Latin-1}
-